# Analog Devices Blackfin simulator testsuite

if [istarget bfin-*-elf] {
    # all machines
    set all_machs "bfin"

    # See if we have a preprocessor available.
    if { [target_compile $srcdir/$subdir/usp.S compilercheck.x "preprocess" \
	  [list "incdir=$srcdir/$subdir"]] == "" } {
	set has_cpp 1
    } {
	verbose -log "Can't execute preprocessor"
	set has_cpp 0
    }

    # See if we have a compiler available.
    if { [target_compile $srcdir/$subdir/argc.c compilercheck.x "executable" \
	  [list "incdir=$srcdir/$subdir" "additional_flags=-msim"]] == "" } {
	set has_cc 1
    } {
	verbose -log "Can't execute C compiler"
	set has_cc 0
    }

    foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.\[csS\]]] {
	# If we don't have a compiler available, skip tests :(.
	if { $has_cpp == 0 && [string match "*.S" $src] } {
	    untested $src
	    continue
	}
	if { $has_cc == 0 && [string match "*.c" $src] } {
	    untested $src
	    continue
	}

	# If we're only testing specific files and this isn't one of them,
	# skip it.
	if ![runtest_file_p $runtests $src] {
	    continue
	}
	run_sim_test $src $all_machs
    }
}
